package model;

/**
 * This class keeps track of the important settings of the Table object
 * It includes the table name, the maximum number of players, the ante,
 * and the maxmimum bet. 
 */

import java.io.Serializable;

public class TableSettings implements Serializable {
	private static final long serialVersionUID = 1L;
	private String name;
	private int maxPlayers;
	private int ante;
	private int maxBet;
	
	/**
	 * Default constructor which only includes the name of the table,
	 * all other settings are set to their default values
	 * @param name
	 */
	public TableSettings(String name) {
		this.name = name;
		this.maxPlayers = 6;
		this.ante = 5;
		this.maxBet = 100;
	}
	
	/**
	 * Constructor which includes all possible values to be set
	 */
	public TableSettings(String name, int maxPlayers, int ante,	int maxBet) {
		this.name = name;
		this.maxPlayers = maxPlayers;
		this.ante = ante;
		this.maxBet = maxBet;
	}

	//Getters and setters:
	
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public int getMaxPlayers() {
		return maxPlayers;
	}
	public void setMaxPlayers(int maxPlayers) {
		this.maxPlayers = maxPlayers;
	}
	public int getAnte() {
		return ante;
	}
	public void setAnte(int ante) {
		this.ante = ante;
	}
	public int getMaxBet() {
		return maxBet;
	}
	public void setMaxBet(int maxBet) {
		this.maxBet = maxBet;
	}
	
	@Override
	public String toString() {
		return "TableSettings [name=" + name + ", maxPlayers=" + maxPlayers
				+ ", ante=" + ante + ", maxBet="+ maxBet + "]";
	}	
}
